FortiGate 50Eで闇ネットに接続する(手動セットアップ)
セットアップの目標
Fortigate 50E の WAN1 をWANに設定する
Fortigate 50E の WAN2 を闇ネット用物理インターフェースに設定する
OpenWrtのインストール
既にOpenWrtが導入済みの場合は、最新のSNAPSHOT版にアップデートしたうえで、「tincのインストール」まで飛ばしてください
まだOpenWrtのインストールが完了していない場合は以下のページの手順でインストールしてください
tincのインストール
code:sh
apk update
apk upgrade
apk add tinc
tincのuci設定
uci set tinc.gsnet.Name='fg50e_XXXX' の部分は自分のノード名を設定する
code:sh
uci del tinc.NETNAME
uci del tinc.NODENAME
uci set tinc.gsnet=tinc-net
uci set tinc.gsnet.enabled='1'
uci set tinc.gsnet.generate_keys='1'
uci add_list tinc.gsnet.ConnectTo='gsngw01'
uci add_list tinc.gsnet.ConnectTo='suzukautako'
uci set tinc.gsnet.Mode='Switch'
uci set tinc.gsnet.Name='fg50e_XXXX'
uci set tinc.gsnet.PrivateKeyFile='/etc/tinc/gsnet/rsa_key.priv'
uci commit
設定が書けているか確認
余計な設定がはいっていないか確認する
code:txt
root@OpenWrt:~# cat /etc/config/tinc
config tinc-net 'gsnet'
option enabled '1'
option generate_keys '1'
list ConnectTo 'gsngw01'
option Mode 'Switch'
option Name 'fg50e_7f68'
option PrivateKeyFile '/etc/tinc/gsnet/rsa_key.priv'
ルートノード(gsngw01)の公開鍵を追加する
以下の複数行にわたるシェルコマンドをコピーボタンを押してコピーして、ターミナルに貼り付けして実行すればok
code:sh
mkdir -p /etc/tinc/gsnet/hosts
cat <<'EOF' > /etc/tinc/gsnet/hosts/gsngw01
# gsngw01
Address = 153.127.23.44
Port = 655
-----BEGIN RSA PUBLIC KEY-----
MIIBCgKCAQEAs//3ZYJ7+cWRptqA/I6gzpvLL8DEG20pJYSMx6xcPunfazBnKb3w
ctz5xwJqTMpYzUQwTs0aIVqF/Rf3+yAIs/UPA1ToX3q3Lq588wIeIJ9R2jr9LOpU
o7dgDrE3GDdhOutgbGHqxWzsXlYVfQ1OLQtZFkyAJU5teK++cWmqpL15liZ+JxrI
Gkh+NnUVR1DJMh1eEWg/sZMYzIFKZ71BBduhDPo1vYzL83iqwB8LoKDNehd/zzSK
mBcxFLb8Bf2ob6c13cyISeFhuWVQMvV0HLDdddHUgBZqhPj9qmUSlnQ+EUHeiVRf
2DkrYX2zMIQ+FP0WCT9BdjVA/ZKnX72dtwIDAQAB
-----END RSA PUBLIC KEY-----
EOF
cat <<'EOF' > /etc/tinc/gsnet/hosts/suzukautako
# suzukautako
Address = 140.227.70.225
Port = 655
-----BEGIN RSA PUBLIC KEY-----
MIIBCgKCAQEAzzPh12lCjoWmnkyOFxQ4+ySQQ4WcYh11AdOoyGLTZCX3yA+jH6NO
2EJ6hx4kdvSEQfU1YRR5FJkD28nNsKYAoMhEsbRIJjn/uTCTw0NHFw6MbfDPgTlK
vqNhijTY3h3Z5mtciMm5Ooow4ZXywih3Ty2c8Gvc77jMMlWtZ+ay6XsSvFT26Cit
oFzKf2uGUT6JoibzTjZcXwfq/aMB4HDG5p5gpA80uYxrwbDnH5TTw6ZbKN2A0IZh
xgr5thmIcn+ihGgbJThZhQJ+UfRSlEYOx1TH5oRhUgcWvnNCuDpD7N2MAtZFSGPA
ouErT6lQ9C5K0qVk6n7Ou8UkvcZHO4qBaQIDAQAB
-----END RSA PUBLIC KEY-----
EOF
ノードの鍵ペアの生成
code:sh
tinc -b -n gsnet generate-rsa-keys
ノード共有形式で鍵の書き出し
code:sh
printf '# %s\n\n' "$(uci get tinc.gsnet.Name)"; cat /etc/tinc/gsnet/rsa_key.pub
tincの起動
code:sh
/etc/init.d/tinc start
起動したかどうかを次のコマンドで確認する
code:sh
ps | grep tinc
ネットワークの設定
LuCIから以下を設定する
Network > Interfaces > Devices
ブリッジデバイス br-gsnet を追加する
Network→Interface→Devices→Add decice configuration...
bridge ports にtapデバイスを追加する
tapデバイスの名前はgsnetかtap0のはず
以下のコマンドで確認できる
code:sh
ip addr
Bring up empty bridge にチェックをいれておく
gsnet はtincが勝手に追加するtapデバイス
Save & Applyも忘れずに
インターフェース gsnet を追加する
Proticol を static にする
Device に br-gsnet を指定する
このノードの闇ネットアドレスを設定する
ネットマスク(255.0.0.0)も忘れずに
Firewallはwanを指定する
追加のネットワークの設定(闇ネットセグメントの物理ポートをはやす)
LuCIから以下を設定する
Fortigate 50E のデフォルト設定だと eth1 と eth2 がブリッジされているので、br-wanからeth2を解列する
eth1 でもいい、好きな方で
解列しなかったほうは引き続きWANポートとして機能する
br-wan から解列したeth1をbr-gsnetに並列する
これで、eth2(筐体の表記でWAN2)が闇ネットセグメントにつながった状態になる
つまり、WAN2にスイッチをつなぐと、いくらでも闇ネットホストを接続できる状態になる
最後にrebootして、自動で接続されることを確認する
code:sh
reboot
TODO
OpenWrtのセットアップはページを分離する
ネットワーク設定のところにスクショとかを貼る
他のルートノードのConnectToも追加する(フルメッシュ対応)